package com.pmsystem.pojo;

import java.util.ArrayList;
import java.util.List;

public class OfficemanExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;
    
  //分页操作----------------------------------------------
    private int startRow;
    private int pageSize;
    public int getStartRow() {
		return startRow;
	}
	public void setStartRow(int startRow) {
		this.startRow = startRow;
	}
	public int getPageSize() {
		return pageSize;
	}
	public void setPageSize(int pageSize) {
		this.pageSize = pageSize;
	}
	//分页操作----------------------------------------------

    public OfficemanExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andOfficemanIdIsNull() {
            addCriterion("officeman_id is null");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdIsNotNull() {
            addCriterion("officeman_id is not null");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdEqualTo(Integer value) {
            addCriterion("officeman_id =", value, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdNotEqualTo(Integer value) {
            addCriterion("officeman_id <>", value, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdGreaterThan(Integer value) {
            addCriterion("officeman_id >", value, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("officeman_id >=", value, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdLessThan(Integer value) {
            addCriterion("officeman_id <", value, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdLessThanOrEqualTo(Integer value) {
            addCriterion("officeman_id <=", value, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdIn(List<Integer> values) {
            addCriterion("officeman_id in", values, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdNotIn(List<Integer> values) {
            addCriterion("officeman_id not in", values, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdBetween(Integer value1, Integer value2) {
            addCriterion("officeman_id between", value1, value2, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanIdNotBetween(Integer value1, Integer value2) {
            addCriterion("officeman_id not between", value1, value2, "officemanId");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameIsNull() {
            addCriterion("officeman_name is null");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameIsNotNull() {
            addCriterion("officeman_name is not null");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameEqualTo(String value) {
            addCriterion("officeman_name =", value, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameNotEqualTo(String value) {
            addCriterion("officeman_name <>", value, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameGreaterThan(String value) {
            addCriterion("officeman_name >", value, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameGreaterThanOrEqualTo(String value) {
            addCriterion("officeman_name >=", value, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameLessThan(String value) {
            addCriterion("officeman_name <", value, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameLessThanOrEqualTo(String value) {
            addCriterion("officeman_name <=", value, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameLike(String value) {
            addCriterion("officeman_name like", value, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameNotLike(String value) {
            addCriterion("officeman_name not like", value, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameIn(List<String> values) {
            addCriterion("officeman_name in", values, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameNotIn(List<String> values) {
            addCriterion("officeman_name not in", values, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameBetween(String value1, String value2) {
            addCriterion("officeman_name between", value1, value2, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanNameNotBetween(String value1, String value2) {
            addCriterion("officeman_name not between", value1, value2, "officemanName");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeIsNull() {
            addCriterion("officeman_age is null");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeIsNotNull() {
            addCriterion("officeman_age is not null");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeEqualTo(Integer value) {
            addCriterion("officeman_age =", value, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeNotEqualTo(Integer value) {
            addCriterion("officeman_age <>", value, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeGreaterThan(Integer value) {
            addCriterion("officeman_age >", value, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeGreaterThanOrEqualTo(Integer value) {
            addCriterion("officeman_age >=", value, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeLessThan(Integer value) {
            addCriterion("officeman_age <", value, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeLessThanOrEqualTo(Integer value) {
            addCriterion("officeman_age <=", value, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeIn(List<Integer> values) {
            addCriterion("officeman_age in", values, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeNotIn(List<Integer> values) {
            addCriterion("officeman_age not in", values, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeBetween(Integer value1, Integer value2) {
            addCriterion("officeman_age between", value1, value2, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanAgeNotBetween(Integer value1, Integer value2) {
            addCriterion("officeman_age not between", value1, value2, "officemanAge");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexIsNull() {
            addCriterion("officeman_sex is null");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexIsNotNull() {
            addCriterion("officeman_sex is not null");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexEqualTo(String value) {
            addCriterion("officeman_sex =", value, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexNotEqualTo(String value) {
            addCriterion("officeman_sex <>", value, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexGreaterThan(String value) {
            addCriterion("officeman_sex >", value, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexGreaterThanOrEqualTo(String value) {
            addCriterion("officeman_sex >=", value, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexLessThan(String value) {
            addCriterion("officeman_sex <", value, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexLessThanOrEqualTo(String value) {
            addCriterion("officeman_sex <=", value, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexLike(String value) {
            addCriterion("officeman_sex like", value, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexNotLike(String value) {
            addCriterion("officeman_sex not like", value, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexIn(List<String> values) {
            addCriterion("officeman_sex in", values, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexNotIn(List<String> values) {
            addCriterion("officeman_sex not in", values, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexBetween(String value1, String value2) {
            addCriterion("officeman_sex between", value1, value2, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanSexNotBetween(String value1, String value2) {
            addCriterion("officeman_sex not between", value1, value2, "officemanSex");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneIsNull() {
            addCriterion("officeman_telephone is null");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneIsNotNull() {
            addCriterion("officeman_telephone is not null");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneEqualTo(String value) {
            addCriterion("officeman_telephone =", value, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneNotEqualTo(String value) {
            addCriterion("officeman_telephone <>", value, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneGreaterThan(String value) {
            addCriterion("officeman_telephone >", value, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneGreaterThanOrEqualTo(String value) {
            addCriterion("officeman_telephone >=", value, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneLessThan(String value) {
            addCriterion("officeman_telephone <", value, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneLessThanOrEqualTo(String value) {
            addCriterion("officeman_telephone <=", value, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneLike(String value) {
            addCriterion("officeman_telephone like", value, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneNotLike(String value) {
            addCriterion("officeman_telephone not like", value, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneIn(List<String> values) {
            addCriterion("officeman_telephone in", values, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneNotIn(List<String> values) {
            addCriterion("officeman_telephone not in", values, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneBetween(String value1, String value2) {
            addCriterion("officeman_telephone between", value1, value2, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andOfficemanTelephoneNotBetween(String value1, String value2) {
            addCriterion("officeman_telephone not between", value1, value2, "officemanTelephone");
            return (Criteria) this;
        }

        public Criteria andJobIsNull() {
            addCriterion("job is null");
            return (Criteria) this;
        }

        public Criteria andJobIsNotNull() {
            addCriterion("job is not null");
            return (Criteria) this;
        }

        public Criteria andJobEqualTo(String value) {
            addCriterion("job =", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobNotEqualTo(String value) {
            addCriterion("job <>", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobGreaterThan(String value) {
            addCriterion("job >", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobGreaterThanOrEqualTo(String value) {
            addCriterion("job >=", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobLessThan(String value) {
            addCriterion("job <", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobLessThanOrEqualTo(String value) {
            addCriterion("job <=", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobLike(String value) {
            addCriterion("job like", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobNotLike(String value) {
            addCriterion("job not like", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobIn(List<String> values) {
            addCriterion("job in", values, "job");
            return (Criteria) this;
        }

        public Criteria andJobNotIn(List<String> values) {
            addCriterion("job not in", values, "job");
            return (Criteria) this;
        }

        public Criteria andJobBetween(String value1, String value2) {
            addCriterion("job between", value1, value2, "job");
            return (Criteria) this;
        }

        public Criteria andJobNotBetween(String value1, String value2) {
            addCriterion("job not between", value1, value2, "job");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdIsNull() {
            addCriterion("blg_office_id is null");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdIsNotNull() {
            addCriterion("blg_office_id is not null");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdEqualTo(Integer value) {
            addCriterion("blg_office_id =", value, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdNotEqualTo(Integer value) {
            addCriterion("blg_office_id <>", value, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdGreaterThan(Integer value) {
            addCriterion("blg_office_id >", value, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("blg_office_id >=", value, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdLessThan(Integer value) {
            addCriterion("blg_office_id <", value, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdLessThanOrEqualTo(Integer value) {
            addCriterion("blg_office_id <=", value, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdIn(List<Integer> values) {
            addCriterion("blg_office_id in", values, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdNotIn(List<Integer> values) {
            addCriterion("blg_office_id not in", values, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdBetween(Integer value1, Integer value2) {
            addCriterion("blg_office_id between", value1, value2, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgOfficeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("blg_office_id not between", value1, value2, "blgOfficeId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdIsNull() {
            addCriterion("blg_super_id is null");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdIsNotNull() {
            addCriterion("blg_super_id is not null");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdEqualTo(Integer value) {
            addCriterion("blg_super_id =", value, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdNotEqualTo(Integer value) {
            addCriterion("blg_super_id <>", value, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdGreaterThan(Integer value) {
            addCriterion("blg_super_id >", value, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("blg_super_id >=", value, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdLessThan(Integer value) {
            addCriterion("blg_super_id <", value, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdLessThanOrEqualTo(Integer value) {
            addCriterion("blg_super_id <=", value, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdIn(List<Integer> values) {
            addCriterion("blg_super_id in", values, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdNotIn(List<Integer> values) {
            addCriterion("blg_super_id not in", values, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdBetween(Integer value1, Integer value2) {
            addCriterion("blg_super_id between", value1, value2, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andBlgSuperIdNotBetween(Integer value1, Integer value2) {
            addCriterion("blg_super_id not between", value1, value2, "blgSuperId");
            return (Criteria) this;
        }

        public Criteria andEnableIsNull() {
            addCriterion("enable is null");
            return (Criteria) this;
        }

        public Criteria andEnableIsNotNull() {
            addCriterion("enable is not null");
            return (Criteria) this;
        }

        public Criteria andEnableEqualTo(Byte value) {
            addCriterion("enable =", value, "enable");
            return (Criteria) this;
        }

        public Criteria andEnableNotEqualTo(Byte value) {
            addCriterion("enable <>", value, "enable");
            return (Criteria) this;
        }

        public Criteria andEnableGreaterThan(Byte value) {
            addCriterion("enable >", value, "enable");
            return (Criteria) this;
        }

        public Criteria andEnableGreaterThanOrEqualTo(Byte value) {
            addCriterion("enable >=", value, "enable");
            return (Criteria) this;
        }

        public Criteria andEnableLessThan(Byte value) {
            addCriterion("enable <", value, "enable");
            return (Criteria) this;
        }

        public Criteria andEnableLessThanOrEqualTo(Byte value) {
            addCriterion("enable <=", value, "enable");
            return (Criteria) this;
        }

        public Criteria andEnableIn(List<Byte> values) {
            addCriterion("enable in", values, "enable");
            return (Criteria) this;
        }

        public Criteria andEnableNotIn(List<Byte> values) {
            addCriterion("enable not in", values, "enable");
            return (Criteria) this;
        }

        public Criteria andEnableBetween(Byte value1, Byte value2) {
            addCriterion("enable between", value1, value2, "enable");
            return (Criteria) this;
        }

        public Criteria andEnableNotBetween(Byte value1, Byte value2) {
            addCriterion("enable not between", value1, value2, "enable");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}